import functools
# int()函数可以做字符串到整数的转换
print(int('1001'))  # 默认用十进制解释“1001”，输出数字1001
print(int('1001', base=2))  # 输出9，因为用2进制解释“1001”就是9

# 那么，如何快速把一个二进制字符串转换为真正的二进制呢


def str2bin(str, base=2):
    return(int(str, 2))


print(str2bin('1001'))  # 直接输出9

# 偏函数就是把一个函数的某些参数给固定住（也就是设置默认值），返回一个新的函数，调用这个新函数会更简单。
# 我们还有更简单的方法来创建偏函数
str2 = functools.partial(int, base=2)

print(str2('1010'))  # 输出10
